package com.zy.explore.license.infrastructure.exception;

import lombok.Getter;

/**
 * description 自定义错误码
 *
 * @author 🇨🇳中国印🇨🇳
 * @date 2022年04月17日 01:33:12
 * @since 1.0.0
 */
@Getter
public enum MessageCode implements StatusCode {

    /**
     * 请求成功
     */
    OK(200, "请求成功"),

    /**
     * 请求参数出错
     */
    BAD_REQUEST(400, "请求参数出错"),

    /**
     * 请求未授权
     */
    UN_AUTHORIZATION(401, "请求未授权"),

    /**
     * 没有权限
     */
    FORBIDDEN(403, "没有权限"),

    /**
     * 找不到页面或接口
     */
    NOT_FOUND(404, "找不到页面或接口"),

    /**
     * 服务器出错
     */
    INTERNAL_SERVER_ERROR(500, "服务器出错"),

    SYSTEM_BUSY(505, "服务器忙"),

    /**
     * 自定义错误码和提示信息
     */
    EXPIRY_TIME_ERROR(8888001, "证书过期时间不能小于当前时间且不能小于发行时间"),
    TOKEN_ERROR(8888002, "不合法的token"),
    USERNAME_PWD_ERROR(8888003, "用户名或密码错误"),
    CUSTOMER_NAME_EXIST_ERROR(8888004, "客户名称已存在"),

    ;


    /**
     * 当前代码
     */
    private final int code;

    /**
     * 消息
     */
    private final String message;

    MessageCode(int code, String message) {
        this.code = code;
        this.message = message;
    }
}
